package com.ruoyi.file.config;

import io.minio.MinioClient;
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

/**
 * Minio 配置信息。
 *
 * @author william.zhao & zhao xiang.
 * @version 1.0
 * @since jdk-17.0.2
 * @date 2023/05/05
 */
@Configuration
@ConfigurationProperties(prefix = "minio")
@Data
public class MinioConfig {
    /** 服务地址。 */
    private String url;

    /** 用户名。 */
    private String accessKey;

    /** 密码。 */
    private String secretKey;

    /** 存储桶名称。 */
    private String bucketName;

    /** 返回前端网关配置路径*/
    private String returnUrl;

    @Bean
    public MinioClient getMinioClient() {
        return MinioClient.builder().endpoint(url).credentials(accessKey, secretKey).build();
    }
}
